#pragma once
#include <windows.h>
#include <tlhelp32.h>
class CDllInjector
{

public:
	static BOOL OpenProcess(DWORD dwProcessId, BOOL bAutoAdjPri = FALSE);
	static BOOL OpenProcess(LPCTSTR pszExecName, BOOL bAutoAdjPri = FALSE);
	static BOOL SetInjectDll(LPCTSTR pszDllName);
	static BOOL RemoteVirtualAlloc();
	static BOOL RemoteVirtualFree();
	static void Reset();
	static BOOL SyncInject();
	static BOOL SetDebugPrivilege(BOOL bEnable);
	static void Release();

private:
	static LPVOID m_pvRemoteMem;
	static HANDLE m_hDestProc;
	static HANDLE m_hLoadLibProc;
	static BOOL m_bHighPriv;

};
 